Field
Aspects of exemplary embodiments relate generally to thin provisioning and tier management in a data storage environment and, more particularly, to methods and apparatuses to allocate pages in a thin provisioning system.
Related Art
Thin provisioning is a method for allocating an area of a storage subsystem that receives a write command to an unallocated area in a virtual volume. A page is a unit of an allocated area. A command can be used to obtain a status of the virtual volume and the page size. Informed of such status, an application can determine whether some area is allocated. A storage subsystem can allocate several types of media to an unallocated area in the virtual volume.
FIG. 1 and FIG. 2 are exemplary diagrams illustrating relationships among files, virtual volumes, and logical volumes for an application program capable of changing tier for an area. A file A is mapped to page 0 and page 1. Page 0 of the virtual volume is mapped to page 100 of the logical volume. Page 100 and page 101 of the logical volume are tier 1, and page 200 and page 201 of the logical volume are tier 2. The file tier policy information 405 shows a file specified by the file name 701 that should be stored in an area with a tier specified by the tier 702. The application program changes tiers based on the file tier policy information 405, which is a table that relates the file name and the tier. Therefore, page 0 and page 1 of the logical volume are mapped to tier 1 of the logical volume in FIG. 1.
As shown in FIG. 2, because the application program changes the tiers of file B to tier 2, the page 1 and the page 2 are mapped to tier 2, and a part of file A is stored in tier 2. Because tier 2 is a lower performance media than tier 1, the performance of file A decreases, which may be detrimental if file A was placed in a tier 1 for performance reasons.